;--- include file created by h2incx v0.86, copyright 2005 japheth
;--- source file: DDEML.H, last modified: 4/24/1998 0:0
ifndef _INC_DDEMLH
_INC_DDEMLH	EQU	<>
ifdef __cplusplus 
;extern "C"{ 
endif 
DECLARE_HANDLE(HCONVLIST)
DECLARE_HANDLE(HCONV)
DECLARE_HANDLE(HSZ)
DECLARE_HANDLE(HDDEDATA)
EXPENTRY	EQU	<CALLBACK>
HSZPAIR	struct
hszSvc	HSZ	?
hszTopic	HSZ	?
HSZPAIR	ends

PHSZPAIR  typedef ptr HSZPAIR
CONVCONTEXT	struct
cb	DWORD	?
wFlags	DWORD	?
wCountryID	DWORD	?
iCodePage	DWORD	?
dwLangID	DWORD	?
dwSecurity	DWORD	?
qos	SECURITY_QUALITY_OF_SERVICE	<>
CONVCONTEXT	ends

PCONVCONTEXT  typedef ptr CONVCONTEXT
CONVINFO	struct
cb	DWORD	?
hUser	DWORD_PTR	?
hConvPartner	HCONV	?
hszSvcPartner	HSZ	?
hszServiceReq	HSZ	?
hszTopic	HSZ	?
hszItem	HSZ	?
wFmt	DWORD	?
wType	DWORD	?
wStatus	DWORD	?
wConvst	DWORD	?
wLastError	DWORD	?
hConvList	HCONVLIST	?
ConvCtxt	CONVCONTEXT	<>
hwnd	HWND	?
hwndPartner	HWND	?
CONVINFO	ends

PCONVINFO  typedef ptr CONVINFO
XST_NULL	EQU	0
XST_INCOMPLETE	EQU	1
XST_CONNECTED	EQU	2
XST_INIT1	EQU	3
XST_INIT2	EQU	4
XST_REQSENT	EQU	5
XST_DATARCVD	EQU	6
XST_POKESENT	EQU	7
XST_POKEACKRCVD	EQU	8
XST_EXECSENT	EQU	9
XST_EXECACKRCVD	EQU	10
XST_ADVSENT	EQU	11
XST_UNADVSENT	EQU	12
XST_ADVACKRCVD	EQU	13
XST_UNADVACKRCVD	EQU	14
XST_ADVDATASENT	EQU	15
XST_ADVDATAACKRCVD	EQU	16
CADV_LATEACK	EQU	0FFFFh
ST_CONNECTED	EQU	0001h
ST_ADVISE	EQU	0002h
ST_ISLOCAL	EQU	0004h
ST_BLOCKED	EQU	0008h
ST_CLIENT	EQU	0010h
ST_TERMINATED	EQU	0020h
ST_INLIST	EQU	0040h
ST_BLOCKNEXT	EQU	0080h
ST_ISSELF	EQU	0100h
DDE_FACK	EQU	8000h
DDE_FBUSY	EQU	4000h
DDE_FDEFERUPD	EQU	4000h
DDE_FACKREQ	EQU	8000h
DDE_FRELEASE	EQU	2000h
DDE_FREQUESTED	EQU	1000h
DDE_FAPPSTATUS	EQU	00ffh
DDE_FNOTPROCESSED	EQU	0000h
DDE_FACKRESERVED	EQU	(  not  ( DDE_FACK  or  DDE_FBUSY  or  DDE_FAPPSTATUS ) )
DDE_FADVRESERVED	EQU	(  not  ( DDE_FACKREQ  or  DDE_FDEFERUPD ) )
DDE_FDATRESERVED	EQU	(  not  ( DDE_FACKREQ  or  DDE_FRELEASE  or  DDE_FREQUESTED ) )
DDE_FPOKRESERVED	EQU	<(  not  ( DDE_FRELEASE ) )>
MSGF_DDEMGR	EQU	8001h
CP_WINANSI	EQU	1004
CP_WINUNICODE	EQU	1200
ifdef UNICODE 
CP_WINNEUTRAL	EQU	<CP_WINUNICODE>
else 
CP_WINNEUTRAL	EQU	<CP_WINANSI>
endif 
XTYPF_NOBLOCK	EQU	0002h
XTYPF_NODATA	EQU	0004h
XTYPF_ACKREQ	EQU	0008h
XCLASS_MASK	EQU	0FC00h
XCLASS_BOOL	EQU	1000h
XCLASS_DATA	EQU	2000h
XCLASS_FLAGS	EQU	4000h
XCLASS_NOTIFICATION	EQU	8000h
XTYP_ERROR	EQU	( 0000h  or  XCLASS_NOTIFICATION  or  XTYPF_NOBLOCK )
XTYP_ADVDATA	EQU	( 0010h  or  XCLASS_FLAGS )
XTYP_ADVREQ	EQU	( 0020h  or  XCLASS_DATA  or  XTYPF_NOBLOCK )
XTYP_ADVSTART	EQU	( 0030h  or  XCLASS_BOOL )
XTYP_ADVSTOP	EQU	( 0040h  or  XCLASS_NOTIFICATION )
XTYP_EXECUTE	EQU	( 0050h  or  XCLASS_FLAGS )
XTYP_CONNECT	EQU	( 0060h  or  XCLASS_BOOL  or  XTYPF_NOBLOCK )
XTYP_CONNECT_CONFIRM	EQU	( 0070h  or  XCLASS_NOTIFICATION  or  XTYPF_NOBLOCK )
XTYP_XACT_COMPLETE	EQU	( 0080h  or  XCLASS_NOTIFICATION )
XTYP_POKE	EQU	( 0090h  or  XCLASS_FLAGS )
XTYP_REGISTER	EQU	( 00A0h  or  XCLASS_NOTIFICATION  or  XTYPF_NOBLOCK )
XTYP_REQUEST	EQU	( 00B0h  or  XCLASS_DATA )
XTYP_DISCONNECT	EQU	( 00C0h  or  XCLASS_NOTIFICATION  or  XTYPF_NOBLOCK )
XTYP_UNREGISTER	EQU	( 00D0h  or  XCLASS_NOTIFICATION  or  XTYPF_NOBLOCK )
XTYP_WILDCONNECT	EQU	( 00E0h  or  XCLASS_DATA  or  XTYPF_NOBLOCK )
XTYP_MASK	EQU	00F0h
XTYP_SHIFT	EQU	4
TIMEOUT_ASYNC	EQU	0FFFFFFFFh
QID_SYNC	EQU	0FFFFFFFFh
ifdef UNICODE 
SZDDESYS_TOPIC	EQU	<L"System">
SZDDESYS_ITEM_TOPICS	EQU	<L"Topics">
SZDDESYS_ITEM_SYSITEMS	EQU	<L"SysItems">
SZDDESYS_ITEM_RTNMSG	EQU	<L"ReturnMessage">
SZDDESYS_ITEM_STATUS	EQU	<L"Status">
SZDDESYS_ITEM_FORMATS	EQU	<L"Formats">
SZDDESYS_ITEM_HELP	EQU	<L"Help">
SZDDE_ITEM_ITEMLIST	EQU	<L"TopicItemList">
else 
SZDDESYS_TOPIC	EQU	<"System">
SZDDESYS_ITEM_TOPICS	EQU	<"Topics">
SZDDESYS_ITEM_SYSITEMS	EQU	<"SysItems">
SZDDESYS_ITEM_RTNMSG	EQU	<"ReturnMessage">
SZDDESYS_ITEM_STATUS	EQU	<"Status">
SZDDESYS_ITEM_FORMATS	EQU	<"Formats">
SZDDESYS_ITEM_HELP	EQU	<"Help">
SZDDE_ITEM_ITEMLIST	EQU	<"TopicItemList">
endif 
FNCALLBACK typedef proto WINSTDCALLCONV :DWORD,:DWORD,:HCONV,:HSZ,:HSZ,:HDDEDATA,:ULONG_PTR,:ULONG_PTR
proto_PFNCALLBACK typedef proto WINSTDCALLCONV :DWORD,:DWORD,:HCONV,:HSZ,:HSZ,:HDDEDATA,:ULONG_PTR,:ULONG_PTR
PFNCALLBACK typedef ptr proto_PFNCALLBACK
CBR_BLOCK	EQU	<( ( HDDEDATA ) 0ffffffffh )>
DdeInitializeA proto WINSTDCALLCONV  :LPDWORD, :PFNCALLBACK, :DWORD, :DWORD
DdeInitializeW proto WINSTDCALLCONV  :LPDWORD, :PFNCALLBACK, :DWORD, :DWORD
ifdef UNICODE 
DdeInitialize	EQU	<DdeInitializeW>
else 
DdeInitialize	EQU	<DdeInitializeA>
endif 
CBF_FAIL_SELFCONNECTIONS	EQU	00001000h
CBF_FAIL_CONNECTIONS	EQU	00002000h
CBF_FAIL_ADVISES	EQU	00004000h
CBF_FAIL_EXECUTES	EQU	00008000h
CBF_FAIL_POKES	EQU	00010000h
CBF_FAIL_REQUESTS	EQU	00020000h
CBF_FAIL_ALLSVRXACTIONS	EQU	0003f000h
CBF_SKIP_CONNECT_CONFIRMS	EQU	00040000h
CBF_SKIP_REGISTRATIONS	EQU	00080000h
CBF_SKIP_UNREGISTRATIONS	EQU	00100000h
CBF_SKIP_DISCONNECTS	EQU	00200000h
CBF_SKIP_ALLNOTIFICATIONS	EQU	003c0000h
APPCMD_CLIENTONLY	EQU	00000010h
APPCMD_FILTERINITS	EQU	00000020h
APPCMD_MASK	EQU	00000FF0h
APPCLASS_STANDARD	EQU	00000000h
APPCLASS_MASK	EQU	0000000Fh
DdeUninitialize proto WINSTDCALLCONV  :DWORD
DdeConnectList proto WINSTDCALLCONV  :DWORD, :HSZ, :HSZ, :HCONVLIST, :PCONVCONTEXT
DdeQueryNextServer proto WINSTDCALLCONV  :HCONVLIST, :HCONV
DdeDisconnectList proto WINSTDCALLCONV  :HCONVLIST
DdeConnect proto WINSTDCALLCONV  :DWORD, :HSZ, :HSZ, :PCONVCONTEXT
DdeDisconnect proto WINSTDCALLCONV  :HCONV
DdeReconnect proto WINSTDCALLCONV  :HCONV
DdeQueryConvInfo proto WINSTDCALLCONV  :HCONV, :DWORD, :PCONVINFO
DdeSetUserHandle proto WINSTDCALLCONV  :HCONV, :DWORD, :DWORD_PTR
DdeAbandonTransaction proto WINSTDCALLCONV  :DWORD, :HCONV, :DWORD
DdePostAdvise proto WINSTDCALLCONV  :DWORD, :HSZ, :HSZ
DdeEnableCallback proto WINSTDCALLCONV  :DWORD, :HCONV, :DWORD
DdeImpersonateClient proto WINSTDCALLCONV  :HCONV
EC_ENABLEALL	EQU	0
EC_ENABLEONE	EQU	<ST_BLOCKNEXT>
EC_DISABLE	EQU	<ST_BLOCKED>
EC_QUERYWAITING	EQU	2
DdeNameService proto WINSTDCALLCONV  :DWORD, :HSZ, :HSZ, :DWORD
DNS_REGISTER	EQU	0001h
DNS_UNREGISTER	EQU	0002h
DNS_FILTERON	EQU	0004h
DNS_FILTEROFF	EQU	0008h
DdeClientTransaction proto WINSTDCALLCONV  :LPBYTE, :DWORD, :HCONV, :HSZ, :DWORD, :DWORD, :DWORD, :LPDWORD
DdeCreateDataHandle proto WINSTDCALLCONV  :DWORD, :LPBYTE, :DWORD, :DWORD, :HSZ, :DWORD, :DWORD
DdeAddData proto WINSTDCALLCONV  :HDDEDATA, :LPBYTE, :DWORD, :DWORD
DdeGetData proto WINSTDCALLCONV  :HDDEDATA, :LPBYTE, :DWORD, :DWORD
DdeAccessData proto WINSTDCALLCONV  :HDDEDATA, :LPDWORD
DdeUnaccessData proto WINSTDCALLCONV  :HDDEDATA
DdeFreeDataHandle proto WINSTDCALLCONV  :HDDEDATA
HDATA_APPOWNED	EQU	0001h
DdeGetLastError proto WINSTDCALLCONV  :DWORD
DMLERR_NO_ERROR	EQU	0
DMLERR_FIRST	EQU	4000h
DMLERR_ADVACKTIMEOUT	EQU	4000h
DMLERR_BUSY	EQU	4001h
DMLERR_DATAACKTIMEOUT	EQU	4002h
DMLERR_DLL_NOT_INITIALIZED	EQU	4003h
DMLERR_DLL_USAGE	EQU	4004h
DMLERR_EXECACKTIMEOUT	EQU	4005h
DMLERR_INVALIDPARAMETER	EQU	4006h
DMLERR_LOW_MEMORY	EQU	4007h
DMLERR_MEMORY_ERROR	EQU	4008h
DMLERR_NOTPROCESSED	EQU	4009h
DMLERR_NO_CONV_ESTABLISHED	EQU	400ah
DMLERR_POKEACKTIMEOUT	EQU	400bh
DMLERR_POSTMSG_FAILED	EQU	400ch
DMLERR_REENTRANCY	EQU	400dh
DMLERR_SERVER_DIED	EQU	400eh
DMLERR_SYS_ERROR	EQU	400fh
DMLERR_UNADVACKTIMEOUT	EQU	4010h
DMLERR_UNFOUND_QUEUE_ID	EQU	4011h
DMLERR_LAST	EQU	4011h
DdeCreateStringHandleA proto WINSTDCALLCONV  :DWORD, :LPSTR, :DWORD
DdeCreateStringHandleW proto WINSTDCALLCONV  :DWORD, :LPWSTR, :DWORD
ifdef UNICODE 
DdeCreateStringHandle	EQU	<DdeCreateStringHandleW>
else 
DdeCreateStringHandle	EQU	<DdeCreateStringHandleA>
endif 
DdeQueryStringA proto WINSTDCALLCONV  :DWORD, :HSZ, :LPSTR, :DWORD, :DWORD
DdeQueryStringW proto WINSTDCALLCONV  :DWORD, :HSZ, :LPWSTR, :DWORD, :DWORD
ifdef UNICODE 
DdeQueryString	EQU	<DdeQueryStringW>
else 
DdeQueryString	EQU	<DdeQueryStringA>
endif 
DdeFreeStringHandle proto WINSTDCALLCONV  :DWORD, :HSZ
DdeKeepStringHandle proto WINSTDCALLCONV  :DWORD, :HSZ
DdeCmpStringHandles proto WINSTDCALLCONV  :HSZ, :HSZ
ifndef NODDEMLSPY
DDEML_MSG_HOOK_DATA	struct
uiLo	DWORD	?
uiHi	DWORD	?
cbData	DWORD	?
Data	DWORD 8 dup (?)
DDEML_MSG_HOOK_DATA	ends

PDDEML_MSG_HOOK_DATA typedef ptr DDEML_MSG_HOOK_DATA

MONMSGSTRUCT	struct
cb	DWORD	?
hwndTo	HWND	?
dwTime	DWORD	?
hTask	HANDLE	?
wMsg	DWORD	?
wParam	WPARAM	?
lParam	LPARAM	?
dmhd	DDEML_MSG_HOOK_DATA	<>
MONMSGSTRUCT	ends

PMONMSGSTRUCT typedef ptr MONMSGSTRUCT

MONCBSTRUCT	struct
cb	DWORD	?
dwTime	DWORD	?
hTask	HANDLE	?
dwRet	DWORD	?
wType	DWORD	?
wFmt	DWORD	?
hConv	HCONV	?
hsz1	HSZ	?
hsz2	HSZ	?
hData	HDDEDATA	?
dwData1	ULONG_PTR	?
dwData2	ULONG_PTR	?
cc	CONVCONTEXT	<>
cbData	DWORD	?
Data	DWORD 8 dup (?)
MONCBSTRUCT	ends

PMONCBSTRUCT typedef ptr MONCBSTRUCT

MONHSZSTRUCTA	struct
cb	DWORD	?
fsAction	BOOL	?
dwTime	DWORD	?
hsz	HSZ	?
hTask	HANDLE	?
str_	CHAR 1 dup (?)
MONHSZSTRUCTA	ends

PMONHSZSTRUCTA typedef ptr MONHSZSTRUCTA

MONHSZSTRUCTW	struct
cb	DWORD	?
fsAction	BOOL	?
dwTime	DWORD	?
hsz	HSZ	?
hTask	HANDLE	?
str_	WCHAR 1 dup (?)
MONHSZSTRUCTW	ends

PMONHSZSTRUCTW typedef ptr MONHSZSTRUCTW

ifdef UNICODE 
MONHSZSTRUCT  typedef MONHSZSTRUCTW
PMONHSZSTRUCT  typedef PMONHSZSTRUCTW
else 
MONHSZSTRUCT  typedef MONHSZSTRUCTA
PMONHSZSTRUCT  typedef PMONHSZSTRUCTA
endif 
MH_CREATE	EQU	1
MH_KEEP	EQU	2
MH_DELETE	EQU	3
MH_CLEANUP	EQU	4
MONERRSTRUCT	struct
cb	DWORD	?
wLastError	DWORD	?
dwTime	DWORD	?
hTask	HANDLE	?
MONERRSTRUCT	ends

PMONERRSTRUCT typedef ptr MONERRSTRUCT

MONLINKSTRUCT	struct
cb	DWORD	?
dwTime	DWORD	?
hTask	HANDLE	?
fEstablished	BOOL	?
fNoData	BOOL	?
hszSvc	HSZ	?
hszTopic	HSZ	?
hszItem	HSZ	?
wFmt	DWORD	?
fServer	BOOL	?
hConvServer	HCONV	?
hConvClient	HCONV	?
MONLINKSTRUCT	ends

PMONLINKSTRUCT typedef ptr MONLINKSTRUCT

MONCONVSTRUCT	struct
cb	DWORD	?
fConnect	BOOL	?
dwTime	DWORD	?
hTask	HANDLE	?
hszSvc	HSZ	?
hszTopic	HSZ	?
hConvClient	HCONV	?
hConvServer	HCONV	?
MONCONVSTRUCT	ends

PMONCONVSTRUCT typedef ptr MONCONVSTRUCT

MAX_MONITORS	EQU	4
APPCLASS_MONITOR	EQU	00000001h
XTYP_MONITOR	EQU	( 00F0h  or  XCLASS_NOTIFICATION  or  XTYPF_NOBLOCK )
MF_HSZ_INFO	EQU	01000000h
MF_SENDMSGS	EQU	02000000h
MF_POSTMSGS	EQU	04000000h
MF_CALLBACKS	EQU	08000000h
MF_ERRORS	EQU	10000000h
MF_LINKS	EQU	20000000h
MF_CONV	EQU	40000000h
MF_MASK	EQU	0FF000000h
endif 
ifdef __cplusplus 
endif 
endif 
